package com.suntoon.framework.util;

import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;

/**
 * @Author: LEAVES
 * @Version 1.0
 * @Date: 2021年06月25日 14时35分17秒
 * @Description: 正则校验
 */

@Component
public class RegexUtil {

    //手机号
    public static final String REGEX_PHONE = "^([1][3,4,5,6,7,8,9])\\d{9}$";
    //2-20的不包含特殊符号
    public static final String REGEX_CNC = "[A-Za-z0-9_\\-\\u4e00-\\u9fa5]{2,20}+";
    //2-15
    public static final String REGEX_LEN = "^.{2,15}$";
    //由数字和字母组成，并且要同时含有数字和字母，且长度要在6-15位之间
    public static final String REGEX_PWD = "^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,15}$";

    /**
     * 手机正则校验
     *
     * @param phone
     * @return
     */
    public boolean regexPhone(String phone) {
        if (StringUtils.isEmpty(phone)) {
            return false;
        }
        return phone.matches(REGEX_PHONE);
    }

    /**
     * 姓名校验
     *
     * @param name
     * @return
     */
    public boolean regexName(String name) {
        if (StringUtils.isEmpty(name)) {
            return false;
        }
        return name.matches(REGEX_CNC);
    }

    /**
     * 密码校验
     *
     * @param pwd
     * @return
     */
    public boolean regexPwd(String pwd) {
        if (StringUtils.isEmpty(pwd)) {
            return false;
        }
        return pwd.matches(REGEX_PWD);
    }
}

